import java.util.HashMap;

public class 罗马数字转整数 {
    
    public static void main(String[] args) {
        
        System.out.println(romanToInt("MCMXCIV"));

    }

    private static HashMap<Character , Integer> map = new HashMap<>();

    public static int romanToInt(String s) {
        map.put('I', 1);
        map.put('V', 5);
        map.put('X', 10);
        map.put('L', 50);
        map.put('C', 100);
        map.put('D', 500);
        map.put('M', 1000);

        int sum = 0;
        int preValue = 0;

        for(int i=s.length()-1; i>=0; i--){

            
            char c = s.charAt(i);
            int curValue = map.get(c);

            if(curValue < preValue){

                sum -= curValue;
            } else {

                sum += curValue;
            }

            preValue = curValue;

        }

        return sum;
    }
}
